home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #14 / Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO / prog_d / oleauttr.zip / NUMSVR.ZIP / NUMSVR.PAS < prev    next >
Pascal/Delphi Source File  |  1995-03-23  |  2KB  |  78 lines

  1. unit NumSvr;
  2.  
  3. interface
  4.  
  5. uses
  6.   OleAuto,
  7.   NumSvCls,
  8.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  9.   Forms, Dialogs, StdCtrls;
  10.  
  11. type
  12.   TfrmNumSvr = class(TForm)
  13.     cmdExit: TButton;
  14.     cmdBumpit: TButton;
  15.     txtXVal: TEdit;
  16.     cmdIncr: TButton;
  17.     OleAutoClient1: TOleAutoClient;
  18.     Label1: TLabel;
  19.     Label2: TLabel;
  20.     procedure FormCreate(Sender: TObject);
  21.     procedure FormDestroy(Sender: TObject);
  22.     procedure cmdExitClick(Sender: TObject);
  23.     procedure cmdBumpitClick(Sender: TObject);
  24.     procedure cmdIncrClick(Sender: TObject);
  25.   private
  26.     { Private declarations }
  27.    ob : TNumSvrOb;
  28.    bObExists : Boolean;
  29.   public
  30.     { Public declarations }
  31.   end;
  32.  
  33. var
  34.   frmNumSvr: TfrmNumSvr;
  35.  
  36. implementation
  37.  
  38. {$R *.DFM}
  39.  
  40. procedure TfrmNumSvr.FormCreate(Sender: TObject);
  41. begin
  42.    bObExists := False;
  43.    ob := TNumSvrOb.CreateObject('NumSvr.Document');
  44.    bObExists := True;
  45. end;
  46.  
  47. procedure TfrmNumSvr.FormDestroy(Sender: TObject);
  48. begin
  49.    if bObExists then
  50.         ob.Release;
  51. end;
  52.  
  53. procedure TfrmNumSvr.cmdExitClick(Sender: TObject);
  54. begin
  55.    Close;
  56. end;
  57.  
  58. procedure TfrmNumSvr.cmdBumpitClick(Sender: TObject);
  59. var
  60.     x : Integer;
  61. begin
  62.    if not bObExists then Exit;
  63.    ob.X := ob.X + 1;
  64. end;
  65.  
  66. procedure TfrmNumSvr.cmdIncrClick(Sender: TObject);
  67. var
  68.    x : Integer;
  69. begin
  70.    if not bObExists then Exit;
  71.    x := Integer(StrToInt(txtXVal.text));
  72.    { After the following call, the value of x should be incremented by the OLE object. }
  73.    ob.Incr(x);
  74.    txtXVal.text := IntToStr(Longint(x));
  75. end;
  76.  
  77. end.
  78.